RIAG Crate 006: Volume 290 ATP Apple Terminal Program
Alternative Name: RIAG - Volume 290 - ATP Apple Terminal Program (K67)
Disk info for Volume_290_ATP_Apple_Terminal_Program.dsk:
File Name: riag_006_Volume_290_-_ATP_-_Apple_Terminal_Program/Volume_290_ATP_Apple_Terminal_Program.dsk
Disk Name: /PDE.832/
Physical Size (bytes): 143360
Free Space (bytes): 8192
Used Space (bytes): 135168
Physical Size (KB): 140
Free Space (KB): 8
Used Space (KB): 132
Archive Order: DOS
Disk Format: ProDOS
Total Blocks: 280
Free Blocks: 16
Used Blocks: 264
Volume Access: Destroy Read Rename Write
Block Number of Bitmap: 6
Creation Date: 12/22/1988
File Entries Per Block: 13
File Entry Length (bytes): 39
Active Files in Root Directory: 11
Minimum ProDOS Version Required: 0
Volume Created By ProDOS Version: 6
Volume Name: PDE.832
Disk directory for Volume_290_ATP_Apple_Terminal_Program.dsk:
FINDER.DATA FND 001 03/06/1989 12/22/1988 216
ATP.SYSTEM SYS 030 07/10/1988 12/22/1988 14,600 A=$2000
MLI.ATP BIN 008 06/24/1988 12/22/1988 3,431 A=$6000
SCI.ATP BIN 004 06/22/1988 12/22/1988 1,352 A=$5A00
CONFIG $F1 001 07/03/1988 12/22/1988 83
MACROS DIR 001 12/22/1988 12/22/1988 512
DEFAULT $F3 001 06/22/1988 12/22/1988 51
HELP DIR 001 12/22/1988 12/22/1988 512
HELP.07 $F5 001 06/19/1988 12/22/1988 262
HELP.06 $F5 015 07/10/1988 12/22/1988 6,860
HELP.08 $F5 023 07/10/1988 12/22/1988 10,773
HELP.09 $F5 018 07/10/1988 12/22/1988 8,326
HELP.01 $F5 021 07/11/1988 12/22/1988 10,136
HELP.02 $F5 009 07/10/1988 12/22/1988 3,597
HELP.04 $F5 018 07/10/1988 12/22/1988 8,487
HELP.05 $F5 022 07/10/1988 12/22/1988 10,634
DRIVERS DIR 001 03/03/1989 12/22/1988 512
SCI.P11 BIN 004 06/22/1988 12/22/1988 1,346 A=$5A00
FINDER.DATA FND 001 03/03/1989 03/03/1989 40
SEGMENTS DIR 001 12/22/1988 12/22/1988 512
CHAT $F4 003 06/21/1988 12/22/1988 513
QUIT $F4 006 06/21/1988 12/22/1988 2,328
HELP $F4 005 06/24/1988 12/22/1988 2,014
MED $F4 008 06/21/1988 12/22/1988 3,272
VIEW $F4 009 08/09/1988 12/22/1988 4,096
ATP.DOC TXT 044 12/22/1988 12/22/1988 21,835
FINDER.ROOT FND 001 03/06/1989 02/06/1989 8
ProDOS format; 8,192 bytes free; 135,168 bytes used.
Text found in Volume_290_ATP_Apple_Terminal_Program.dsk/ATP.DOC.txt:
June 22, 1988
ATP-Pro Terminal Emulation Package
Copyright (C) 1987,88 James J. Elliott
ATP is ShareWare; it is NOT in the public domain, and there are
restrictions on its distribution, but these are designed to permit
anyone to "test drive" the package. Feel free to copy ATP and give
away copies to anyone who might be interested. If you decide to use
ATP after a one-week evaluation period, you should send $15 to the
author at the below address. [NY residents add 7% sales tax]. You
will then receive the current version of ATP and a registration
number. This number will entitle you to technical support (by U.S.
or electronic mail), and you will be notified if updates are
The below address will be valid until at least May, 1989. If a
change of address occurs, registered users will be notified of the
author's new address, and a revised version of this document will
Report the serial number on your copy when you register!!!
2214 12th Street
Troy, NY 12180-2940
COMMISSIONS TO ENCOURAGE WIDER DISTRIBUTION
As a registered ATP user, you will receive a $3 "commission" for
every new user who reports using a copy of ATP with your serial
number when they register. (Your serial number is the same as your
ATP-Pro is a complex package. Here is a nutshell map of the
Side one, /ATP, contains the files you need to actually use ATP:
ATP.SYSTEM is the main program itself. MLI.ATP contains some
utility routines for dealing with ProDOS. SCI.ATP is the Serial
Card Interface. CONFIG is the file which stores ATP's default
configuration. SEGMENTS is a subdirectory that contains a set of
ATP sub-programs that provide additional capability. MACROS is the
directory where keyboard macros are kept. HELP is the directory
where the help screens are found. For ATP to work right, all of the
files listed above must be in the same directory (but it does not
matter where that directory itself is).
DRIVERS is a subdirectory containing spare serial drivers. As
explained below, if you are on a //gs, or a //e with a non
Super-Serial-Card compatible card, you will have to replace SCI.ATP
with one of these.
ATP.DOC is the file you are now looking at.
Side two, /SOURCE, contains the files and documentation you will
need if you want to write your own segments, or a serial driver to
support your Zambleweeny 58 sub-meson comm card.
ATP is distributed on 5.25" disks; you'll either need to be able to
read them, or have a friend who can help you copy them to another
format. You will need an apple //c, or an apple //e with an 80
column board in slot 3 and Super Serial Card (or equivalent) in
slot 2, or an apple //gs.
If you are using a Super Serial Card, you'll need to set some of
the switches on the card for ATP to work. Switches 1-5, 1-6 and 2-6
must be ON, while 1-7 and 2-7 must be OFF. The other switch
settings are not as important; ATP can use them to determine
default settings for baud rate, parity and data format, or will can
ignore them if you have a CONFIG file.
If you don't own a Super Serial Card, you may still be able to use
ATP, if your card is a good enough clone. Try setting the switches
as you would for an SSC. If that doesn't work, you'll have to dig
out your manual, or use guesswork to configure it: It must be in
communications mode (switches 1-5 and 1-6 on the SSC), interrupts
must be turned ON (switch 2-6 on the SSC), and to be honest I'm not
quite sure what having 1-7 and 2-7 off does, but it makes things
If you don't even have a good Super Serial Card clone, but your
card supports the Pascal 1.1 protocol, ATP may be able to limp
along with it. Rename the file SCI.ATP to SCI.SSC and move it into
the DRIVERS subdirectory, in case you buy a Super Serial Card
later. Move the file SCI.P11 from the DRIVERS subdirectory into the
directory where ATP.SYSTEM lives, and rename it SCI.ATP. If you do
this, realize that ATP is no longer using an interrupt-based serial
driver, and will almost certainly lose characters at high baud
rates. ATP cannot control DTR, or some other things, either.
Generally, the situation is bad. You might want to try writing your
own driver (see side 2 of this disk), or buying an SSC.
//c (and compatible) OWNERS:
Use your setup program to set the slot 2 communications parameters
as described for the SSC above. Be sure it is in communications
mode. The ATP remote call server will not be able to tell when
carrier is present on your modem, so it is particularly important
that you make the modem as "quiet" as possible (ATQ1 and ATE0 on a
Hayes-compatible). Also, if you are logged in remotely as "system
operator" and hang up without using the Quit command, someone might
be able to call before the timeout period and take over your
You need to use a different serial card driver. Rename the file
SCI.ATP to SCI.SSC, and move it into the DRIVERS subdirectory, in
case you need it later. Move the file SCI.P11 from the DRIVERS
subdirectory into the directory where ATP.SYSTEM lives, and rename
it SCI.ATP. NOTE: The fact that you are forced to use the "P11"
driver means that //gs support is not yet finished. I am writing a
specific driver for the //gs so that ATP will be able to work fully
on a //gs, but it is very difficult to get it tested and fixed
since I do not have access to a //gs, and am relying on a busy
friend several states away. ATP will work as a terminal emulator,
but some features (dropping DTR and detecting carrier, for example)
cannot work yet.
Your outgoing character buffer can be as small as you like, but
your incoming character buffer MUST be set to at least 512 bytes
(the default is 2048), and I recommend at least 3072 (the size of
the SSC buffer) to be safe in applications like EMACS that might do
a whole lot of complicated vt100 scroll window tricks. (I don't
know if you NEED that size, but 256 bytes was not enough, and 3072
seems to work great for me). If you need space in main memory to
put the buffer, there are 2560 bytes free starting at $8000.
To use a printer with ATP, you must have a printer interface in
It is possible that in future revisions of ATP you will be required
to have 128K of memory (in a //e this would take the form of an
extended 80-column card) in order to implement a capture buffer or
some such. Presently this is not needed, and you may use the memory
as a RAM drive.
ProDOS is currently not supplied with ATP. If there is sufficient
demand, I may license ProDOS for this purpose. However, presently
you must copy the file PRODOS onto your ATP disk if you want to
make it bootable.
Please distribute copies of ATP! Permission is hereby granted for
ATP to be uploaded to electronic bulletin boards or other archival
and distribution media. It may also be included in users group
libraries and other ShareWare collections, provided that no more
than $5 is charged for any disk containing ATP, unless special
arrangements are made with the author in advance. MODIFIED COPIES
OF ATP SHALL NOT BE DISTRIBUTED, and VERBATIM COPIES OF THIS
DOCUMENT AND THE ONLINE HELP MUST BE INCLUDED WHENEVER ATP IS
You should pay $15 for every copy of ATP that could be in use at
the same time, up to a maximum of $150 per college, school
district, or non-profit organization. (For-profit companies do not
receive any special exemption under this license). For example,
several people using ATP on one machine, or one person using ATP in
different places, should pay $15; but two people on two machines
should pay $30. People who are unable to afford the licensing cost
may be able to receive special exemptions by writing the developer
and explaining their situation.
Aside: Now, obviously, I am not likely to try to track down people
using unlicensed copies of ATP. If you suspect that ShareWare
licensing agreements are not legally enforceable, you may well be
right. However, I am counting on your sense of fair play. Even
beyond the two years that I have been working on ATP in fits and
starts, I spent a great deal of time just polishing it up and
documenting it, so that when I released it, it could be as useful
to as many people as possible. If it IS useful to you, I hope you
will see fit to help make my time tangibly worth having spent.
Registration is also useful to you, for it encourages extensions,
and guarantees you'll be able to get them. (Then there are the
COMMENTS AND SUGGESTIONS WELCOME
The author will do his best to correct bugs and make updates
available. ATP is a growing package, and you can influence the way
it develops. (Once you send in your registration fee, you are
entitled to use newer versions free of charge. However, updates
ordered directly from the author will cost $4.)
Possible extensions include a capture buffer, Kermit support and
other file transfer modes, among other things. There are provisions
for any machine language programmer to conveniently write features
for ATP; these are documented in the file SEGMENTS.DOC on the
/SOURCE side of this disk.
ATP has a startup buffer; if you run ATP from a command shell or
application selector which permits such an operation, you may specify a
startup segment for ATP. Doing this causes ATP to launch that segment
as soon as initialization is complete. By default, the startup segment
is MED, the macro editor, which when invoked this way loads the default
macro set and returns. A note about specifying startup segments: Unless
the name in the startup buffer starts with a slash ('/'), ATP will look
for the file in its SEGMENTS subdirectory. You may specify a full
pathname by starting with a slash.
When you enter ATP you will see a greeting message. You are immediately
in "Terminal mode"; if your communications parameters are set
correctly, you can type commands for your modem. If not, you can fix
them by pressing OA-T to enter Terminal Configuration mode. (in this
document, "OA-x" means "hold down the Open-Apple key while pressing key
'x'". "CA-x" means the same for the Closed-Apple key.) Terminal
Configuration mode (described below) is an example of the kind
interaction provided by ATP's dialog box manager.
When you quit ATP, it will return the Super Serial Card to whatever
state it had before you entered (unless you are not using an
SSC-compatible card or an apple //c, in which case you should ignore
this paragraph.) That means, if DTR was off when you entered, it will
be turned off again when you leave. This will hang up most modems. To
get around this, enter ATP with DTR already on, or have your modem
ignore DTR. A future release of ATP may have a quit mode that leaves
DTR on regardless.
Significantly more detailed explanations of ATP commands are available
within ATP itself, through the online help facility. To reach this
facility, press OA-? from Terminal mode. The remainder of this document
is merely a capsule summary of the functions available within ATP.
As you may have noticed, ATP commands are invoked by holding down the
Open Apple key in conjunction with another key. Other commands include:
OA-?: Provides access to ATP's hierarchical on-line help facility.
OA-C: Enter chat mode. In this mode ATP behaves like the UNIX "talk"
program, dividing the screen in half, and echoing what the user
types in the top half, while printing incoming characters in the
bottom. This is ideal for communicating with someone real-time
over the modem, especially if they are running ATP or another
program that also supports chat mode. ATP chat mode windows
emulate the type of terminal chosen in "Terminal Setup", below.
OA-H: Hardcopy. An image of the current window is sent to the printer.
OA-F: Files. Gives a listing of a ProDOS directory. Like all other
instances where ATP needs to communicate with the user, this
takes place in a window which is separate from the main terminal
session, which remains intact. In fact, if characters arrive
while you are interacting with an ATP window, you will see them
appear in the main window. This window is capable of scrolling
behind the secondary windows if necessary. It's neat to watch!
OA-L: Launch segment. Some of the above commands have transparently
done this already. A segment is a special machine language
program which runs under ATP and has access to most of ATP's
utility subroutines. Chat mode, Help mode, and the Quit command
are implemented as segments, for example. Documentation and
include files on the /SOURCE side of this disk allow machine
language programmers to write their own segments, which could
lead to really creative things like interactive two-player games,
a message service, who knows... The Launch command asks you to
specify a segment by pathname, and runs it. There are some
segments in addition to the ones mentioned above which are
currently provided with ATP (and more to be written soon, I'm
OA-P: Toggle printer. Each line received will be sent to the printer
after you press this key combination, until you press it again.
OA-Q: Quit. Enters ATP's application selector, which gives you feedback
as you explore the online volumes and directories for the program
you want to quit to. Or, you can type Ctrl-Q to do a standard
ProDOS quit, or ESC to return to ATP.
OA-R: Read configuration information from disk. The file CONFIG is
automatically read upon startup, but you may want different
configurations for communicating with different hosts.
OA-T: Terminal Setup. Presents a dialog box that allows you to change
communications, emulation, and display parameters. Use the left
and right arrow keys to pick which category you want to change,
and the up and down arrows to select values within that category.
You have full access to all modes of the Super Serial Card. ATP
can emulate an ADM3A, a VT52, a VT100, or the apple //c. It
performs these emulations rigorously--as near as I have been able
to tell under extensive use and testing, the VT100 emulation is
perfect. (Of course, 132 column mode is not available, nor are
some of the graphics and display modes!) ATP has a dynamically
generated ultra-fast scroll routine. In rare applications which
change the scrolling window frequently, you may want to disable
this feature, and face a slower scrolling speed to avoid waiting
for ATP to write new scroll routines frequently. There are also a
few other options which can be set here. To return to Terminal
mode and execute the changes in settings you have requested,
press RETURN. To return without making any changes, press ESCAPE.
OA-W: Write configuration to disk.
OA-`: (OA-grave) Send break. Transmits an RS-232 hard break.
OA-~: (OA-tilde) Re-enable send. ATP honors the XON/XOFF protocol for
convenience in talking to other ATPs remotely, as well as
bulletin boards and hosts which use it. If a spurious XOFF has
been received, ATP will be blocked, and will be buffering what
you type without sending it. This command pretends that an XON
has been received, allowing ATP to start sending again. (ATP's
keyboard buffering is rather nice, especially when combined with
keyclick, for even when ATP is doing something time-intensive
like printing or generating a scroll routine, it polls the
OA-!: Launch ProDOS shell. This command has been reserved for a year,
though I have not yet written a ProDOS shell (and now I've
happily discovered someone else has!) The idea is to allow the
user (and remote user) to execute ProDOS commands from within a
terminal session. It would be really amazing if it were possible
to do a special quit to Davex, which caused Davex to accept
commands from and direct output to the serial port. I'll have to
see what Dave Lyons thinks of this idea. If not, I'll eventually
write a very simplistic shell just for ATP.
ADDITIONAL SEGMENTS INCLUDED WITH ATP
LINE is designed for CB-simulators and other situations where a user
might want to compose an entire line of text locally before
transmitting it all at once over the modem. It provides a small
local editing window, which includes features like the ability to
re-enter and edit the last eight lines sent.
TEST provides a small window which shows every character coming in over
the modem (no emulation at all). The main window continues to
emulate its terminal type, and characters go to both windows. This
can be used to see how the terminal types work, and to figure out
exactly what that strange host is sending you if there seem to be
SERVSET allows you to set up parameters and passwords for ATP to accept
phone calls itself, and be used remotely.
PRINTSET lets you define special features of your printer, including
the ability to emphasize characters which are displayed in
reverse-video on the screen.
MED is the macro editor, which allows you to examine and change the
current keyboard macro definitions, as well as storing sets of them
What ATP is best at, and the reason I wrote it, is emulating several
terminals. Whenever characters arrive from the modem, they are
interpreted based on the current emulation, and rendered as best the
hardware is able. (Yes, in VT100 mode, "#8" fills the screen with
'E's, "[?5h" turns on reverse-video screen, and "[c" sends
back an answerback code identifying the terminal as a base VT100... You
get the idea.)
Typing keys on the keyboard sends the ASCII code normally associated
with that key (ATP uses positive ASCII). To emulate special features of
a terminal's keyboard, you use the Closed-Apple key.
In ADM3A mode, CA-0 through CA-9 act like PF0 through PF9, and CA with
an arrow key acts like that arrow key on the ADM3A. (Actually, only the
forward-arrow needs to be treated specially, since ADM3As use CTL-H, J,
K and L as arrows!)
In VT100 and VT52 mode, once again CA plus arrow keys emulate the
cursor movement keys. CA-0 through CA-9 send the corresponding numeric
keypad codes. The remaining keys on the keypad are generated by holding
down the Closed-Apple and the period, comma, dash and RETURN keys. Note
that the host computer can change the sequences sent by the cursor and
keypad keys by turning "application mode" on or off; if your host has
left the keypad in numeric mode, the keypad keys simply send the
corresponding number or punctuation. You may need to ask the host to
send an initialization sequence (in UNIX by using tset, for example) to
get application mode enabled. You can also force this by sending an
"ESC=" to ATP. I'll probably write a segment to let you edit your VT100
parameters (like this one), set tabs, and the like, someday...
The VT100 and VT52 PF-keys are emulated by pressing CA-SHIFT-1 through
CA-SHIFT-4 (for PF-1 through PF-4).
WARRANTY AND LIMITATION OF LIABILITY
The author warrants that this program might be useful to some people in
some situations, but not necessarily for you. The author uses ATP-Pro
constantly (in fact, this program and its predecessor are the only
terminal programs he has ever used aside from an occasional Kermit) and
is reasonably certain it won't do anything destructive to your data
either locally, or on machines you call with it. But he DOES keep
BACKUP COPIES of all important data, and so should you. JAMES J.
ELLIOTT SHALL HAVE NO LIABILITY OR RESPONSIBILITY TO THE PURCHASER OR
ANY OTHER PERSON OR ENTITY WITH RESPECT TO ANY LIABILITY, LOSS OR
DAMAGE CAUSED OR ALLEGED TO BE CAUSED DIRECTLY OR INDIRECTLY BY
ATP-PRO. THE EXCLUSION OF IMPLIED WARRANTIES IS NOT PERMITTED BY SOME
STATES. THE ABOVE EXCLUSION MAY NOT APPLY TO YOU. THIS WARRANTY
PROVIDES YOU WITH SPECIFIC LEGAL RIGHTS. THERE MAY BE OTHER RIGHTS THAT
YOU MAY HAVE WHICH VARY FROM STATE TO STATE.
The following are registered trademarks of Apple Computer, Inc.: Apple,
Apple //e, Apple //c, ProDOS. Apple //gs is an Apple trademark pending
VT100 and VT52 are registered trademarks of Digital Equipment
Corporation. ADM3A is a registered trademark of Lear-Siegler (I think).
UNIX is a registered trademark of AT&T.
Davex was written by David A. Lyons, and is distributed by DAL Systems,
P.O. Box 287, North Liberty, IA 52317 (and available for evaluation
online in many places).
ATP stands for "A Terminal Program", "Apple Terminal Program", and
"Adenosine Tri-Phosphate", depending on who you ask.
Text found in Volume_290_ATP_Apple_Terminal_Program.dsk/CONFIG.txt:
Offset Hex Data Characters
======= ================================================ =================
$000000 01 0F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........
$000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 09 ........ ........
$000020 1A 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 ........ ........
$000030 00 00 00 04 5E 4D 5E 4A 00 00 03 5E 5B 21 00 00 ....^M^J ...^[!..
$000040 00 00 00 03 5E 5B 22 00 00 00 00 00 00 00 00 00 ....^[". ........
$000050 00 00 00 .. .. .. .. .. .. .. .. .. .. .. .. .. ...
** END **
Text found in Volume_290_ATP_Apple_Terminal_Program.dsk/FINDER.DATA.txt:
Offset Hex Data Characters
======= ================================================ =================
$000000 01 00 4B 00 22 00 8F 00 7A 01 00 00 00 00 00 00 ..K."... z.......
$000010 01 F0 14 00 3C 00 0A 41 54 50 2E 53 59 53 54 45 .p..<..A TP.SYSTE
$000020 4D 00 00 00 00 00 01 F0 36 00 7A 01 07 41 54 50 M......p 6.z..ATP
$000030 2E 54 58 54 00 00 00 00 00 00 00 00 01 F0 36 00 .TXT.... .....p6.
$000040 10 01 08 53 45 47 4D 45 4E 54 53 00 00 00 00 00 ...SEGME NTS.....
$000050 00 00 01 F0 36 00 A6 00 07 44 52 49 56 45 52 53 ...p6.&. .DRIVERS
$000060 00 00 00 00 00 00 00 00 01 F0 36 00 3C 00 04 48 ........ .p6.<..H
$000070 45 4C 50 00 00 00 00 00 00 00 00 00 00 00 01 F0 ELP..... .......p
$000080 17 00 E4 01 06 4D 41 43 52 4F 53 00 00 00 00 00 ..d..MAC ROS.....
$000090 00 00 00 00 01 F0 17 00 7A 01 06 43 4F 4E 46 49 .....p.. z..CONFI
$0000A0 47 00 00 00 00 00 00 00 00 00 01 F0 17 00 10 01 G....... ...p....
$0000B0 07 53 43 49 2E 41 54 50 00 00 00 00 00 00 00 00 .SCI.ATP ........
$0000C0 01 F0 17 00 A6 00 07 4D 4C 49 2E 41 54 50 00 00 .p..&..M LI.ATP..
$0000D0 00 00 00 00 00 00 00 00 .. .. .. .. .. .. .. .. ........
** END **
Text found in Volume_290_ATP_Apple_Terminal_Program.dsk/FINDER.ROOT.txt:
Offset Hex Data Characters
======= ================================================ =================
$000000 03 00 01 00 01 2A 00 00 .. .. .. .. .. .. .. .. .....*..
** END **
Uploaded by Jason Scott on